home *** CD-ROM | disk | FTP | other *** search
/ Visual Basic Source Code / Visual Basic Source Code.iso / vbsource / crwdemo / export.frm < prev    next >
Text File  |  1994-11-01  |  6KB  |  202 lines

  1. VERSION 2.00
  2. Begin Form Form1 
  3.    Caption         =   "Form1"
  4.    ClientHeight    =   2715
  5.    ClientLeft      =   1020
  6.    ClientTop       =   1425
  7.    ClientWidth     =   5640
  8.    Height          =   3120
  9.    Left            =   960
  10.    LinkTopic       =   "Form1"
  11.    ScaleHeight     =   2715
  12.    ScaleWidth      =   5640
  13.    Top             =   1080
  14.    Width           =   5760
  15.    Begin CommandButton Command5 
  16.       Caption         =   "Start"
  17.       Height          =   495
  18.       Left            =   4200
  19.       TabIndex        =   4
  20.       Top             =   120
  21.       Width           =   1215
  22.    End
  23.    Begin CommandButton Command4 
  24.       Caption         =   "Export To"
  25.       Height          =   495
  26.       Left            =   2160
  27.       TabIndex        =   3
  28.       Top             =   720
  29.       Width           =   1815
  30.    End
  31.    Begin CommandButton Command3 
  32.       Caption         =   "Get Export Options"
  33.       Height          =   495
  34.       Left            =   2160
  35.       TabIndex        =   2
  36.       Top             =   120
  37.       Width           =   1815
  38.    End
  39.    Begin CommandButton Command2 
  40.       Caption         =   "Close Job"
  41.       Height          =   495
  42.       Left            =   120
  43.       TabIndex        =   1
  44.       Top             =   720
  45.       Width           =   1215
  46.    End
  47.    Begin CommonDialog CMDialog1 
  48.       DialogTitle     =   "Open Report"
  49.       Filter          =   "Crystal Reports|*.rpt"
  50.       Flags           =   4096
  51.       Left            =   1440
  52.       Top             =   120
  53.    End
  54.    Begin CommandButton Command1 
  55.       Caption         =   "Open Job"
  56.       Height          =   495
  57.       Left            =   120
  58.       TabIndex        =   0
  59.       Top             =   120
  60.       Width           =   1215
  61.    End
  62.    Begin Label Label1 
  63.       Caption         =   "To use this app:                                                                        1) open a job                                                                      2a) choose Get Export Options && Export To                         or                                                                                         2b) just choose Export To                                                    3) Start the job"
  64.       Height          =   1215
  65.       Left            =   120
  66.       TabIndex        =   5
  67.       Top             =   1320
  68.       Width           =   5295
  69.       WordWrap        =   -1  'True
  70.    End
  71. End
  72. Dim OpenResult As Integer
  73.  
  74. Dim JobHandle As Integer
  75.  
  76. Dim ExportOptions As PEExportOptions
  77. Dim ExportOptionsValid As Integer
  78.  
  79. Sub Command1_Click ()
  80.     If JobHandle <> 0 Then
  81.         MsgBox "Job already open"
  82.         Exit Sub
  83.     End If
  84.  
  85.     CMDialog1.Action = 1
  86.  
  87.     If CMDialog1.Filename <> "" Then
  88.         JobHandle = PEOpenPrintJob(CMDialog1.Filename)
  89.         If JobHandle = 0 Then
  90.             MsgBox "Can't open job - error " & PEGetErrorCode(0)
  91.         End If
  92.     End If
  93. End Sub
  94.  
  95. Sub Command2_Click ()
  96.     If JobHandle = 0 Then
  97.         MsgBox "Job not open"
  98.         Exit Sub
  99.     End If
  100.  
  101.     PEClosePrintJob (JobHandle)
  102.     JobHandle = 0
  103.  
  104.     Call InitExportOptions
  105. End Sub
  106.  
  107. Sub Command3_Click ()
  108.     If JobHandle = 0 Then
  109.         MsgBox "Job not open"
  110.         Exit Sub
  111.     End If
  112.  
  113.     If ExportOptionsValid = 0 Then
  114.         Call InitExportOptions
  115.     End If
  116.  
  117.     ' PEGetExportOptions gets complete information about format and
  118.     ' destination for the export
  119.     ' The ExportOptions must be passed to PEExportTo before calling PEStartPrintJob
  120.     ExportOptionsValid = PEGetExportOptions(JobHandle, ExportOptions)
  121. End Sub
  122.  
  123. Sub Command4_Click ()
  124.     If JobHandle = 0 Then
  125.         MsgBox "Job not open"
  126.         Exit Sub
  127.     End If
  128.  
  129.     If ExportOptionsValid = 0 Then
  130.         Call InitExportOptions
  131.     End If
  132.  
  133.     ' Whenever you call PEExportTo, you must ensure that the format
  134.     ' and dll names have been filled in
  135.     ' You can do this by assigning specific names (as InitExportOptions does)
  136.     ' or by calling PEGetExportOptions
  137.     ' If the ExportOptions structure doesn't contain all information needed
  138.     ' by a format or destination dll, it will ask for the information
  139.     ' when you call PEStartPrintJob
  140.     ' An ExportOptions structure filled in by PEGetExportOptions always has
  141.     ' all the information needed by both dll's
  142.     ExportOptionsValid = PEExportTo(JobHandle, ExportOptions)
  143.  
  144.     If ExportOptionsValid = 0 Then
  145.         MsgBox "PEExportTo failed - error code: " & PEGetErrorCode(JobHandle)
  146.     End If
  147. End Sub
  148.  
  149. Sub Command5_Click ()
  150.     If JobHandle = 0 Then
  151.         MsgBox "Job not open"
  152.         Exit Sub
  153.     End If
  154.  
  155.     If ExportOptionsValid = 0 Then
  156.         MsgBox "Cannot print - no export options"
  157.         Exit Sub
  158.     End If
  159.  
  160.     Dim success As Integer
  161.  
  162.     success = PEStartPrintJob(JobHandle, 1)
  163.  
  164.     If success <> 1 Then
  165.         MsgBox "Exporting failed - error code: " & PEGetErrorCode(JobHandle)
  166.     End If
  167. End Sub
  168.  
  169. Sub Form_Load ()
  170.     JobHandle = 0
  171.     Call InitExportOptions
  172.  
  173.     OpenResult = PEOpenEngine()
  174.  
  175.     If OpenResult = 0 Then
  176.         MsgBox "PEOpenEngine returned " & OpenResult & " - error code " & PEGetErrorCode(0)
  177.     End If
  178. End Sub
  179.  
  180. Sub Form_Unload (Cancel As Integer)
  181.     If OpenResult <> 0 Then
  182.         Call PECloseEngine
  183.     End If
  184.  
  185.     JobHandle = 0
  186. End Sub
  187.  
  188. Sub InitExportOptions ()
  189.     ExportOptions.StructSize = Len(ExportOptions)
  190.     ExportOptions.FormatDLLName = "uxftext" + Chr$(0)
  191.     ExportOptions.FormatType = 0
  192.     ExportOptions.FormatOptions = 0
  193.     ExportOptions.DestinationDLLName = "uxddisk" + Chr$(0)
  194.     ExportOptions.DestinationType = 0
  195.     ExportOptions.DestinationOptions = 0
  196.     ExportOptions.NFormatOptionsBytes = 0
  197.     ExportOptions.NDestinationOptionsBytes = 0
  198.  
  199.     ExportOptionsValid = 0
  200. End Sub
  201.  
  202.